﻿using System;
using System.Linq;
using System.Collections.Generic;
using System.Diagnostics;
using System.Threading;
using System.Drawing;
using System.Windows.Forms;
using Styx;
using Styx.Combat.CombatRoutine;
using Styx.Helpers;
using Styx.Logic;
using Styx.Logic.Combat;
using Styx.Logic.Pathing;
using Styx.WoWInternals;
using Styx.WoWInternals.WoWObjects;
using Styx.Logic.POI;

namespace HarmoniousVigor
{
    public partial class Druid
    {
        public bool feralCombatCombat()
        {
            if (Battlegrounds.IsInsideBattleground)
            {
                if (feralCombatPVPCombat())
                    return true;
            }
            else if (characterPlayer.IsInInstance)
            {
                if (feralCombatDungeonCombat())
                    return true;
            }
            else
            {
                if (feralCombatQuestingCombat())
                    return true;
            }

            return false;
        }
        public bool feralCombatHeal()
        {
            if (Battlegrounds.IsInsideBattleground)
            {
                if (feralCombatPVPHeal())
                    return true;
            }
            else if (characterPlayer.IsInInstance)
            {
                if (feralCombatDungeonHeal())
                    return true;
            }
            else
            {
                if (feralCombatQuestingHeal())
                    return true;
            }

            return false;
        }
        public bool feralCombatBuff()
        {
            if (Battlegrounds.IsInsideBattleground)
            {
                if (feralCombatPVPBuff())
                    return true;
            }
            else if (characterPlayer.IsInInstance)
            {
                if (feralCombatDungeonBuff())
                    return true;
            }
            else
            {
                if (feralCombatQuestingBuff())
                    return true;
            }

            return false;
        }
        public bool feralCombatPullSpell()
        {
            if (Battlegrounds.IsInsideBattleground)
            {
                if (feralCombatPVPPullSpell())
                    return true;
            }
            else if (characterPlayer.IsInInstance)
            {
                if (feralCombatDungeonPullSpell())
                    return true;
            }
            else
            {
                if (feralCombatQuestingPullSpell())
                    return true;
            }

            return false;
        }
    }
}
